package com.ibeeking.found.common.config.feign;

import com.ibeeking.found.common.config.feign.fallback.MemberJobFeignClientFallbackFactory;
import com.ibeeking.found.common.entity.TimeTaskJobParam;
import com.ibeeking.nematos.utils.result.ResponseResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * @Author ibeeking
 */
@FeignClient(name = "mall-member-b-server", contextId = "commonMemberJobFeignClient", path = "/b", fallbackFactory = MemberJobFeignClientFallbackFactory.class, decode404 = true)
public interface MemberJobFeignClient {
    /*
    *  会员情况统计任务创建
     */
    @PostMapping(value = "/job/feign/v1/createJobInfoForMemberUsageSurvey")
    ResponseResult<Boolean>  createJobInfoForMemberSurvey(@RequestBody TimeTaskJobParam param);
    /*
     *  会员情况统计任务删除
     */
    @PostMapping(value = "/job/feign/v1/delJobInfoForMemberUsageSurvey")
    ResponseResult<Boolean>  delJobInfoForMemberUsageSurvey(@RequestBody TimeTaskJobParam param);
    /*
     *  自动计算会员等级任务创建
     */
    @PostMapping(value = "/job/feign/v1/createJobInfoForAutoCalculateLevel")
    ResponseResult<Boolean>  createJobInfoForAutoCalculateLevel(@RequestBody TimeTaskJobParam param);
    /*
     *  自动计算会员等级任务删除
     */
    @PostMapping(value = "/job/feign/v1/delJobInfoForAutoCalculateLevel")
    ResponseResult<Boolean>  delJobInfoForAutoCalculateLevel(@RequestBody TimeTaskJobParam param);
    /*
     *  自动添加标签任务创建
     */
    @PostMapping(value = "/job/feign/v1/createJobInfoForAutoTags")
    ResponseResult<Boolean>  createJobInfoForAutoTags(@RequestBody TimeTaskJobParam param);
    /*
     *  自动添加标签任务删除
     */
    @PostMapping(value = "/job/feign/v1/delJobInfoForAutoTags")
    ResponseResult<Boolean>  delJobInfoForAutoTags(@RequestBody TimeTaskJobParam param);
    /*
     *  自动积分失效任务创建
     */
    @PostMapping(value = "/job/feign/v1/createJobInfoForAutoPointExpire")
    ResponseResult<Boolean>  createJobInfoForAutoPointExpire(@RequestBody TimeTaskJobParam param);
    /*
     *  自动积分失效任务删除
     */
    @PostMapping(value = "/job/feign/v1/delJobInfoForAutoPointExpire")
    ResponseResult<Boolean>  delJobInfoForAutoPointExpire(@RequestBody TimeTaskJobParam param);

}
